以下内容主要是针对Debian的安装。
Debian支持
Docker支持以下版本的Debian:
Debian testing stretch (64-bit)
Debian 8.0 Jessie (64-bit)
Debian 7.7 Wheezy (64-bit)
注意:如果你之前安装的Docker使用了
apt
,请确认已经将apt
源升级到了一个比较新的apt
源。这里的安装方式主要是通过apt
源来安装,以后Docker有更新的时候,只需要apt-get update
就行了。所以说才要求更新apt
源。
安装前提条件
首先,你电脑必须安装了64位的Debian。其次,Linux内核版本最小为3.10,并且3.10或以上版本都可以。
这样做的原因是3.10以前的Linux内核版本缺少一些运行Docker容器的必要特性。并且,在这些老版本内核中发现了一些bug,比如在确认的条件下频繁产生数据异常丢失,这令人非常恐怖!
下一步是检查你当前系统的内核,打开终端并使用 uname -r
来显示你当前系统的内核版本:
$ uname -r
更新你的APT仓库
Docker的 apt
仓库包含了最新版的Docker,目前来说的话是 1.9.1
。然后我们使用Docker的官方仓库来配置 apt
:
1)在搞定这些之前,请确认你的用户名是以 sudo
或 root
特权模式来操作。
2)打开一个终端窗口。
3)删除你机器上那些老旧的仓库。
$ apt-get purge lxc-docker*
$ apt-get purge docker.io*
4)增加一个新 gpg
密钥。
$ apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
5)用你心爱的编辑器打开 /etc/apt/sources.list.d/docker.list
文件。如果这个文件不存在,那么创建一个(默认会自动创建的)。
6)如果打开了这个文件,首先是移除文件上的所有内容(如果有的话)。
7)增加以下内容中的一个到你的Debian系统。
-
如果是
Debian Wheezy
https://apt.dockerproject.org/repo debian-wheezy main
-
如果是
Debian Jessie
deb https://apt.dockerproject.org/repo debian-jessie main
-
如果是
Debian Stretch/Sid
deb https://apt.dockerproject.org/repo debian-stretch main
8)保存并退出这个文件。
9)更新 apt
包目录。
$ apt-get update
10)确认 apt
能从正确的仓库拉取内容
$ apt-cache policy docker-engine
这条命令的意思是列出 docker-engine
软件包缓存的一些关于它的一些包列表,就像一个软件列表,有软件名和版本号。到现在为止,当你运行 apt-get upgrade
之后,apt
会从一个新仓库拉取内容。
安装Docker
安装Docker之前,请确认你已经按照上文描述的样子正确设置了 apt
仓库。
1)更新 apt
包目录。
$ apt-get update
2)安装 Docker
$ apt-get install docker-engine
3)开启 docker
服务
$ service docker start
4)确认 docker
是否正确安装
$ docker run hello-world
这个命令会下载一个测试镜像并在容器中运行它。当容器运行的时候,它会打印出你成功安装的消息。然后自动退出那个容器。
设置docker用户组
这里主要解决在运行 docker
命令的时候需要 root
权限的问题。Docker 守护进程始终以root用户来运行并且绑定了Unix Socket
而不是 TCP
端口。默认情况下,Unix Socket
是 root
用户所拥有,因此,默认情况下你可以用 sudo
来访问它。如果你运行Docker命令出错,请查看是否是以 root
用户来执行的。
警告:
Docker
用户组(或以-G
标志定义的用户组)是等同于root
的。更多详细信息请查看:Docker Daemon Attack Surface
实现例子:
# 增加一个docker group,如果它不存在的话
$ sudo groupadd docker
# 增加一个用户表中已存在的用户 “${USER}” 到 docker group,
# 这里的 “${USER}” 表示用户名变量,就是你要填入的内容,比如,
# 我的为 `ranwuer`。
# 最后注销再登陆你的用户
$ sudo gpasswd -a ${USER} docker
# 重启Docker进程
$ sudo service docker restart
升级Docker
如果想升级到最新版的Docker,就用 apt-get
:
$ apt-get upgrade docker-engine
卸载Docker
$ apt-get purge docker-engine
$ apt-get autoremove # 自动删除依赖
$ rm -rf /var/lib/docker
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。